package cn.aifeix.lxyc.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

@AllArgsConstructor
@Getter
public enum GlobalErrorCodeEnum {
    // 1.公共的成功或者失败的异常
    OK("成功","1"),
    ERROR("失败","-1"),
    FALLBACK("服务不可用","-2"),
    // 2.所有微服务公共错误码，以1XXX开头
    COMMON_PARAM_IS_NULL_ERROR("参数为空异常","1001"),
    COMMON_PARAM_ILLEGAL_ERROR("非法参数异常","1002"),
    COMMON_PARAM_JSR303_ERROR("jsr303参数校验异常","1003"),
    // 3.system服务异常以2XXX打头

    // 4.user服务异常以3XXX打头
    USER_SMS_CODE_EXPIRED_ERROR("短信验证码已过期！","3001"),
    USER_SMS_CODE_ERROR("短信验证码错误","3002"),
    USER_PHONE_EXISTS_ERROR("手机号已注册！", "3003"),
    USER_REGISTER_ERROR("注册失败请重试", "3004"),
    USER_INVITATION_CODE_ERROR("用户邀请码不存在或已被使用", "3005"),
    // 5.uaa服务异常以4XXX打头

    // 6.common服务异常以5XXX打头
    COMM_PHONE_IS_NULL_ERROR("手机号不能为空！", "5001"),
    COMM_PHONE_FORMAT_ERROR("手机号格式不正确！", "5002"),
    COMM_INTERVAL_ERROR("发送过于频繁，请稍后重试！", "5003"),
    COMM_IMAGE_CODE_ERROR("图形验证码错误，请重试","5004"),
    COMM_IMAGE_CODE_IS_NULL_ERROR("图形验证码不能为空","5005"),
    COMM_PHONE_IS_BLOCK_ERROR("手机号已拉黑，请勿重复拉黑","5006"),
    COMM_USER_IS_BLOCK_ERROR("您已经被禁⽤发送短信验证码，请联系管理员","5007"),

    // 7.课程服务异常以6XXX打头
    COURSE_ALREADY_EXISTS_ERROR("课程名已存在","6001"),
    COURSE_TYPE_IS_NULL_ERROR("课程类型不存在","6002"),
    COURSE_TYPE_PATH_IS_NULL_ERROR("课程类型路径不存在","6003"),
    COURSE_NON_EXISTENT_ERROR("课程不存在","6004"),
    ;

    private String message;

    private String code;

}
